//  Created by wealthgrow on 2020/7/7.
//  Copyright © 2020 qimeng. All rights reserved.

#import <UIKit/UIKit.h>

typedef enum : NSUInteger {
    RequestingStatus = 1 << 0,         // 正在请求中
    RequestSuccessStatus = 1 << 1,     // 请求成功状态
    RequestFailedStatus = 1 << 2,      // 请求失败状态
    RequestLostNetworkStatus = 1 << 3, // 网络丢失状态
} LoadRequestStatus;                   // 枚举与位运算

// 产品类型: -2虚拟仿真  1-课程  2-标本 3胚胎  4-题库  5-解剖  8会员 16芝士余额
typedef enum : NSInteger {
    ProductSimularVideo = -2, // 负数值示例
    ProductNone = 0,
    ProductCourse = 1,
    ProductSlideLib = 2,
    Product3DEmbryo = 3, // 2025年01月09日21:32:38添加的
    ProductQuesLib = 4,
    ProductAnatomy = 5,
    ProductVirtualSimulation = 6, // 虚坊
    ProductMember = 8,
    ProductBalance = 16,
    ProductMegaGame = 100, // 大赛(这里是自定义，方便扩展大赛业务)
    ProductDaily = 200,//每日一练(这里是自定义，方便扩展每日一练业务)
    ProductEmpty = 1000,   // 占位
} ProductType;

// 商品购买形式
typedef NS_ENUM(NSUInteger, PayBuyMode) {
    PayNoneType = 0,
    PayFreeType = 1,    // 免费
    PayChargeType = 2,  // 付费
    PayVipDiscount = 3, // VIP折扣
    PayVipFree = 4,     // VIP限免
    PayVipFreeBuy = 5,  // VIP免费可单独购买
    PayVipNotBuy = 6,   // VIP免费不可单独购买
    PayOrgBuy = 8,      // B端销售
};

typedef enum : NSUInteger {
    PayModeNone,
    PayModeFree = 1,    // 免费
    PayModeCharge = 2,  // 付费
    PayModeVIPFree = 4, // VIP限免
    PayModeOrg = 8,     // B端销售
} PayMode;

// 课程授权状态
typedef NS_ENUM(NSInteger, AccessAuthStatus) {
    AccessAuthNotPermit = 0, // 无权限
    AccessAuthPermitted = 1, // 有权限
    AccessAuthExpired = 2,   // 已过期
};

// 商品上下架状态
typedef NS_ENUM(NSUInteger, CommodityStatus) {
    CommodityNone,
    CommodityIsOnSale = 8,
    CommodityDiscontinued = 16,
};

typedef enum : NSUInteger {
    PurchaseCheese = 1,
    PurchaseMemberCard = 2,
} PurchaseType;

typedef enum : NSUInteger {
    InAppPurchaseStateNone,
    InAppPurchaseStateSucc,
    InAppPurchaseStateFail,
} InAppPurchaseState;

typedef NS_ENUM(NSUInteger, CourseQueryType) {
    CourseInquiryType = 1,   // 课程查询
    CourseWareQueryType = 2, // 课件查询
};

typedef enum : NSInteger {
    SchoolResource = 1,   // 院校资源
    InterestResource = 2, // 兴趣资源
} ResourceFrom;

typedef NS_ENUM(NSUInteger, UserLoginType) {
    UserAuthCodeLoginType = 0, // 验证码登录
    UserPasswordLoginType = 1, // 密码登录
    UserSchoolLoginType = 2,   // 学校登录
};

typedef NS_ENUM(NSInteger, UserEndpoint) {
    UserEndpointStudent, // 学生端,学生身份
    UserEndpointTeacher  // 老师端,老师身份
};

typedef NS_ENUM(NSInteger, UserRoleSplitType) {
    UserRoleNormal,      // 普通的身份
    UserOrgStudent,      // 组织内学生,学生身份
    UserOrgTeacherAdmin, // 组织内管理员和老师身份
};

typedef enum : NSUInteger {
    OrgRoleNone,
    OrgRoleAdmin = 1,   // 管理员
    OrgRoleTeacher = 2, // 老师
    OrgRoleStudent = 3, // 学生
} OrgRole;

typedef enum : NSUInteger {
    AgentTypeNone,
    AgentTypePerson,
    AgentTypeCompany,
} AgentType;

// 订单状态 1待支付0x1  2已支付0x2  4已取消0x4  8已退款0x8  16已授权0x10  128已删除0x80
typedef enum : NSUInteger {
    CourseOrderTypeNone,
    CourseOrderTypePaying = 1,   // 待支付 0x1
    CourseOrderTypePayed = 2,    // 已支付 0x2
    CourseOrderTypeCancel = 4,   // 已取消 0x4
    CourseOrderTypeRefunded = 8, // 已退款 0x8
    CourseOrderTypeAuth = 16,    // 已授权 0x10
    CourseOrderTypeDele = 128,   // 已删除 0x80
} CourseOrderType;

// 任务类型（1-签到 2-练习 3-讨论 4-PPT/PDF 8-标本 16-切片 32-关联线上课件）
typedef enum : NSUInteger {
    CloudClassTaskTypeNone,
    CloudClassTaskTypeSign = 1,
    CloudClassTaskTypeExercise = 2,
    CloudClassTaskTypeDiscuss = 3,
    CloudClassTaskTypePPT = 4,
    CloudClassTaskTypeBiaoBen = 8,
    CloudClassTaskTypeSide = 16,
    CloudClassTaskTypeCourseware = 32,
} CloudClassTaskType;

typedef enum : NSUInteger {
    FileTypeNone = 0,
    FileTypeVideo = 1,
    FileTypeImage = 2,
    FileTypePDF = 3,
    FileTypeDoc = 4,
    FileTypePPT = 5,
} FileType;

typedef enum : NSUInteger {
    CourseTypeNone,
    CourseTypePlatform = 1, // 平台课程
    CourseTypeJingPin = 2,  // 精品课程
    CourseTypeCollege = 4,  // 高校课程
    CourseTypeSystem = 8,   // 系统课程
} CourseType;

typedef enum : NSUInteger {
    OrgUserStateInvited = 1,  // 已被邀请，等待用户确认
    OrgUserStateApplied = 2,  // 已申请，等待组织管理员确认
    OrgUserStateJoined = 3,   // 已加入，状态正常
    OrgUserStateBlocked = 4,  // 已被组织管理员禁用相应组织权限，但是用户保留
    OrgUserStateExited = 127, // 已被组织管理员从组织中删除，或者用户已退出这个组织
} OrgUserState;

typedef enum : NSUInteger {
    NoticeTypeOfficial = 1,     // 官方通知
    NoticeTypeOnlineCourse = 2, // 在线课程通知
    NoticeTypeClassroom = 3     // 课堂通知
} NoticeType;

typedef enum : NSUInteger {
    MultiSelectStateNone,        // 当前及子集都没有被选中，空白状态
    MultiSelectStatelPartSelect, // 子集没有全部选中
    MultiSelectStateAllSelect,   // 当前及子集全部选中
} MultiSelectState;

typedef enum : NSUInteger {
    SingleSelectUnSelect, // 没有选中
    SingleSelectSelected, // 选中
} SingleSelectState;

// 1:标本(大体)，2:切片，3:电镜图，4:模型（3D）
typedef enum : NSUInteger {
    SideTypeNone,
    SideTypeBody = 1, //
    SideTypeSide = 2,
    SideTypeImage = 3,
    SideType3D = 4,
} SideType;

typedef enum : NSUInteger {
    QuestionTypeNone,
    QuestionTypeSingleSelect = 100001, // 单选
    QuestionTypeMultiSelect = 100002,  // 多选
    QuestionTypeTureOrFalse = 100003,  // 判断
    QuestionTypeFill = 100004,         // 填空
    QuestionTypeShorAnswer = 100005,   // 简答
    QuestionTypeOperation = 100006,    // 操作题
    QuestionTypeNameParsing = 10006,   // 名词解释
    QuestionTypeCombine = 100007,      // 组合题
} QuestionType;

typedef enum : NSUInteger {
    QuestionAliasNone,
    QuestionAliasSingleSelect = 10001,     // 单选
    QuestionAliasMultiSelect = 10002,      // 多选
    QuestionAliasTureOrFalse = 10003,      // 判断
    QuestionAliasFill = 10004,             // 填空
    QuestionAliasShorAnswer = 10005,       // 简答
    QuestionAliasShorAnswer_Another = 33,  // 简答又一种
    QuestionAliasNameParsing = 10006,      // 名词解释
    QuestionAliasNameParsing_Another = 34, // 名词解释-又一种
    QuestionAliasOperation = 10007,        // 操作题
    QuestionAliasOperation_Another = 35,
} QuestionAlias;

typedef enum : NSUInteger {
    CorrectStateNone,
    CorrectStateCorrect,
    CorrectStateError,
    CorrectStateDone, // 用于考试，标记做过
} CorrectState;

// 回答状态 1:未答 2:回答正确 3:回答错误 4:未知
typedef enum : NSUInteger {
    QuesDoneStatusNone = 0,
    QuesDoneStatusNotExercise = 1,
    QuesDoneStatusCorrect = 2,
    QuesDoneStatusWrong = 3,
    QuesDoneStatusDone = 4,
} QuesDoneStatus;

// 0未作答 0x1作答中 0x2已提交 0x4已评分
typedef enum : NSUInteger {
    TestDoneStateNoAnswer = 0,
    TestDoneStateAnswering = 1,
    TestDoneStateCommited = 2,
    TestDoneStateScored = 4,
} TestDoneState;

typedef enum : NSUInteger {
    QuesFuncModeNone,
    QuesFuncModeExercise,      // 练习模式，单题选择或点击确认答案按钮后，立即判断对错，展示答案和解析
    QuesFuncModePreview,       // 预览模式，无做题交互，无用户答案，直接展示题目，正确答案和解析，用于查看试卷题目场景
    QuesFuncModePreviewQues,   // 仅预览试题模式，无做题交互，无用户答案，直接展示题目，《不展示正确答案和解析》
    QuesFuncModeExam,          // 考试模式，只展示题目信息和用户答案，不判对错，无确认答案按钮，无解析
    QuesFuncModeBeforeCorrect, // 阅卷前模式，只展示题目信息和用户答案，无交互，不判对错，无确认答案按钮，无解析
    QuesFuncModeCorrected,     // 已阅卷模式，无做题交互，有用户答案，直接展示题目，用户答案，正确答案和解析，用于阅卷后学生查看答案信息场景
} QuesFuncMode;

// 1正常章节  2错题集   3收藏  4测验练习
// v3.0 作业考试里面从查看最高分进来的
typedef enum : NSUInteger {
    QuesEnterFromNone,
    QuesEnterFromQuesLib = 100,
    QuesEnterFromWrong = 200,
    QuesEnterFromCollect = 300,
    QuesEnterFromTest = 400,
    QuesEnterFromExam = 500,
    QuesEnterFromExamWrong = 600,
    QuesEnterFromCloudClassTaskExercise = 700, // 我的课堂里面，课堂课外任务里面的练习
    QuesEnterFromCheckHighScore = 800,         // 查看最高分
    QuesEnterFromMegagame = 900,               // 从大赛那边过来的
    QuesEnterFromMegagameMistakes = 910,
    从大赛错题集进来的
} QuesEnterFrom;

// 练习模式类型 1:普通章节练习 2:设置练习模式
typedef enum : NSUInteger {
    SetExerciseNone,
    NormalQuesLib = 1,
    RandomExercise = 2,
} SetExerciseType;

// 错题集类型 1:课程 2:标本 4:题库 8:每日一练错题集
typedef enum : NSUInteger {
    WrongLibTypeNone,
    WrongLibTypeCourse = 1,
    WrongLibTypeSide = 2,
    WrongLibTypeQuesLib = 4,
    WrongLibTypeDailyWrong = 8,
} WrongLibType;

// 收藏类型 1课程 2标本库 3题库 4课件 5标本 6试题 7帖子
// 6试题的子类型 8每日一练 9课程课件测验错题 10标本库标本练习题
typedef enum : NSUInteger {
    CollectResourceTypeNone,
    CollectResourceTypeCourse = 1,
    CollectResourceTypeSideLib = 2,
    CollectResourceTypeQuesLib = 3,
    CollectResourceTypeCourseWare = 4,
    CollectResourceTypeSide = 5,
    CollectResourceTypeQues = 6,
    CollectResourceTypePost = 7,
    CollectResourceTypeQues_Daily = 8,      // 每日一练收藏
    CollectResourceTypeQues_CourseWare = 9, // 课程课件测验错题收藏
    CollectResourceTypeQues_Side = 10,      // 标本库标本练习题目收藏
} CollectResourceType;

typedef enum : NSUInteger {
    TchHomePageTypeCourse = 1,         // 课程
    TchHomePageTypeQuesLib = 2,        // 题库
    TchHomePageTypeSideLib = 3,        // 标本库
    TchHomePageTypeExamPaper = 4,      // 试卷
    TchHomePageTypeStudent = 5,        // 学生
    TchHomePageTypePubResourse = 6,    // 公共资源
    TchHomePageTypePersonResourse = 7, // 个人资源
} TchHomePageType;

// 测验类型 1-测验(课程) 2-随堂练习（标本） 3每日一练
typedef enum : NSUInteger {
    TestTypeNone,
    TestTypeCourse = 1,
    TestTypeExercise = 2,
    TestTypeDaily = 3
} TestType;

// 100收藏  200错题  300订阅
typedef enum : NSUInteger {
    QuesLibListTypeNone,
    QuesLibListTypeCollect = 100,
    QuesLibListTypeWrong = 200,
    QuesLibListTypeSubscribe = 300,
    QuesLibListTypeSystem = 400,
} QuesLibListType;

typedef enum : NSUInteger {
    PaywayNone,
    PaywayZhishi = 1, // 余额
    PaywayWX = 2,     // 微信支付
    PaywayMaYun = 3,  // 支付宝支付
    PaywayApple = 4,  // 苹果支付
    PaywayManual = 5, // 人工调整
} Payway;

typedef NS_OPTIONS(NSUInteger, StudyExamStatus) {
    ExamStatusNotStarted = 1 << 0,   // 未开始
    ExamStatusInProgress = 1 << 1,   // 进行中
    ExamStatusEnded = 1 << 2,        // 已结束
    ExamStatusNotSubmitted = 1 << 3, // 未提交
    ExamStatusSubmitted = 1 << 4,    // 已提交
    ExamStatusNotGraded = 1 << 5,    // 未批改
    ExamStatusGraded = 1 << 6,       // 已批改
    //    UIRectCornerAllCorners  = ~0UL
};

typedef NS_ENUM(NSUInteger, ExamAnalysisStatus) {
    ExamAnalysisStatusForbidden = 1,    // 禁止查看试卷
    ExamAnalysisStatusAfterSubmit = 2,  // 提交后可查看
    ExamAnalysisStatusAfterExamEnd = 3, // 考试结束后可查看成绩
    ExamAnalysisStatusAfterGrading = 4  // 批阅后可查看
};

// typedef enum : NSUInteger {
//     SeeExamPaperNotAccess,//没有查看试卷的权限
//     SeeExamPaperScoreDetail,//可以查看试卷详情
//     SeeExamPaperAgainOrWaitExamEnd,//再次进试卷||请在考试结束后查看成绩
//     SeeExamPaperPleaseWaitGraded,
// } SeeExamPaperType;

typedef NS_ENUM(NSUInteger, ExamStipulateStatus) {
    ExamStipulateStatusNotAnswered = 0,    // 未作答
    ExamStipulateStatusAnsweredOnTime = 1, // 规定时间内作答
    ExamStipulateStatusAnsweredLate = 2,   // 未在规定时间内作答
    ExamStipulateStatusOther = 3           // 其它状态
};

// 报告状态
typedef NS_OPTIONS(NSUInteger, ReportStatus) {
    ReportStatusNotStarted = 0,     // 未完成
    ReportStatusSaved = 1 << 0,     // 暂存
    ReportStatusSubmitted = 1 << 1, // 提交
    ReportStatusGraded = 1 << 2,    // 已评分
};

typedef NS_ENUM(NSUInteger, ThreeDEmbryoDataType) {
    ThreeDEmbryoDataTypeModel = 1,      // 模型
    ThreeDEmbryoDataTypePic = 2,        // 图片
    ThreeDEmbryoDataTypeVideo = 3,      // 视频
    ThreeDEmbryoDataTypeAnimation = 4,  // 动画
    ThreeDEmbryoDataTypeCourseware = 5, // 课件
};

// 课件类型：-1模型 1视频 2PPT 3动画 4知识速记 5图谱 6图片 7音频 8笔记 16交互实验(目前就是视频) 32切片 48标本 64测验 65三维动画
typedef NS_ENUM(NSInteger, CoursewareResourceType) {
    CoursewareTypeOther = -100,
    CoursewareTypeAnatomy = -1,
    CoursewareTypeVideo = 1,
    CoursewareTypePPT = 2,
    CoursewareTypeAnimation = 3,
    CoursewareTypeKnowledgeImage = 4,
    CoursewareTypeImage = 5,
    CoursewareTypePic = 6,
    CoursewareTypeAudio = 7,
    CoursewareTypeNote = 8,
    CoursewareTypeJiaohuExp = 16,
    CoursewareTypeSide = 32,
    CoursewareTypeBiaoBen = 48,
    CoursewareTypeTest = 64,
    CoursewareType3DAnimation = 65,
    CoursewareType_sliceOne = 98, // 切片
    CoursewareType_sliceTwo = 99, // 标本
};

// 解剖类型: 0:系统解剖  1:局部解剖  2:断层解剖  3:针灸
typedef NS_ENUM(NSUInteger, AnatomyType) {
    AnatomyTypeSystem = 0,
    AnatomyTypeJuBu = 1,
    AnatomyTypeDuanCeng = 2,
    AnatomyTypeZhenJiu = 3,
};

// 学生课堂操作类型
typedef NS_ENUM(NSUInteger, StudentClassOperateType) {
    StudentOperate_DidSelectRowType = 0,    //!< 默认点击cell
    StudentOperate_PreViewType = 1,         //!< 预览
    StudentOperate_DeleteType = 2,          //!< 删除
    StudentOperate_DetailType = 3,          //!< 详情
    StudentOperate_AnalysisType = 4,        //!< 考情分析
    StudentOperate_AddQuesType = 5,         //!< 添加试题
    StudentOperate_ToAnswerType = 6,        //!< 去答题.
    StudentOperate_ToExamType = 7,          //!< 去考试.
    StudentOperate_CheckExamPaperType = 8,  //!< 查看试卷
    StudentOperate_CheckHighScoreType = 9,  /**<查看最高分. */
    StudentOperate_ToSumbitType = 10,       //!< 去提交.
    StudentOperate_EditType = 11,           //!< 编辑
    StudentOperate_PublishType = 12,        //!< 发布
    StudentOperate_QrCodeTapType = 13,      //!< 二维码Tap
    StudentOperate_CompleteStatusType = 14, //!< 同学完成情况.
    StudentOperate_CreateSignType = 15,     //!< 创建签到.
    StudentOperate_SignStatusType = 16,     //!< 签到情况.
    StudentOperate_SignDetailType = 17,     //!< 签到详情
    StudentOperate_ToSignType = 18,         //!< 去签到.
    StudentOperate_RemoveCourseType = 19,   //!< 移出课程.
    StudentOperate_ChangeClassType = 20,    //!< 换班.
    StudentOperate_HomeworkExamType = 21,   /**<作业考试. */
    StudentOperate_OfflineClassType = 22,   /**<线下课堂. */
    StudentOperate_HomeMore = 23,           /**<学习首页更多. */
    StudentOperate_ItemMore = 24,           /**<单个栏目更多. */
    StudentOperate_CollectType = 25,        /**<收藏. */
    StudentOperate_StudyModeType = 26,      /**<学习模式. */
    StudentOperate_CheckModeType = 27,      /**<考核模式. */
};

// 课堂操作类型
typedef NS_ENUM(NSUInteger, ClassOperateType) {
    ClassOperate_DidSelectRowType = 0,    //!< 默认点击cell
    ClassOperate_PreViewType = 1,         //!< 预览
    ClassOperate_DeleteType = 2,          //!< 删除
    ClassOperate_DetailType = 3,          //!< 详情
    ClassOperate_AnalysisType = 4,        //!< 考情分析
    ClassOperate_AddQuesType = 5,         //!< 添加试题
    ClassOperate_ToAnswerType = 6,        //!< 去答题.
    ClassOperate_ToExamType = 7,          //!< 去考试.
    ClassOperate_CheckExamPaperType = 8,  //!< 查看试卷
    ClassOperate_CheckHighScoreType = 9,  /**<查看最高分. */
    ClassOperate_ToSumbitType = 10,       //!< 去提交.
    ClassOperate_EditType = 11,           //!< 编辑
    ClassOperate_PublishType = 12,        //!< 发布
    ClassOperate_QrCodeTapType = 13,      //!< 二维码Tap
    ClassOperate_CompleteStatusType = 14, //!< 同学完成情况.
    ClassOperate_CreateSignType = 15,     //!< 创建签到.
    ClassOperate_SignStatusType = 16,     //!< 签到情况.
    ClassOperate_SignDetailType = 17,     //!< 签到详情
    ClassOperate_ToSignType = 18,         //!< 去签到.
    ClassOperate_RemoveCourseType = 19,   //!< 移出课程.
    ClassOperate_ChangeClassType = 20,    //!< 换班.
};

// 首页操作类型
typedef NS_ENUM(NSUInteger, HomePageOperateType) {
    HomePageOperate_DidSelectRowType = 0, //!< 默认点击cell
    HomePageOperate_CheckType = 1,        //!< 查看
    HomePageOperate_ShareType = 2,        //!< 共享
    HomePageOperate_FinishType = 3,       //!< 结束
    HomePageOperate_DeleteType = 4,       //!< 删除
    HomePageOperate_BeginTrain = 5,       //!< 开始训练
    HomePageOperate_BeginCheck = 6,       //!< 开始考核
    HomePageOperate_NoteDetail = 7,       //!< 笔记详情>
    HomePageOperate_MoreType = 8,         /**<更多操作. */
    HomePageOperate_ClosesType = 9,       /**<关闭操作. */
};

typedef NS_ENUM(NSUInteger, SimulationOperateType) {
    SimulationOperate_DidSelectRowType = 0, //!< 默认点击cell
    SimulationOperate_CheckType = 10,       //!< 查看简介
    SimulationOperate_ToPayType = 20,       //!< 去付款
    SimulationOperate_SelectAllType = 30,   //!< 全选
    SimulationOperate_SelectOneType = 40,   //!< 选择
};

typedef NS_ENUM(NSUInteger, MCGTrainRecordApiType) {
    MCGTrainModeType = 1, // 训练模式
    MCGCheckModeType = 2, // 考核模式
    MCGAllModeType = 3,   // 全部
};

typedef NS_ENUM(NSUInteger, MCGAIInquiryModeType) {
    MCGAI_Clinic = 1, // 临床问诊
    MCGAI_Nurse = 2,  // 护理问诊
};

typedef NS_ENUM(NSUInteger, MCGAIInquiryOperateType) {
    MCGAI_MedicalGather = 1,  // 病史采集
    MCGAI_HealthCheck = 2,    // 体格检查
    MCGAI_AuxiliaryCheck = 3, // 辅助检查
    MCGAI_HealthHistory = 4,  // 健康史采集
};

typedef NS_ENUM(NSUInteger, MCGUserInfoStatus) {
    MCGUser_CaseIng = 1, // 病例撰写中
    MCGUser_Result = 2,  // 结果
};

typedef NS_ENUM(NSUInteger, MCGTrainOperateType) {
    MCGTrainOperateGrowRecodType = 0,   // 成长记录
    MCGTrainOperateDeleteType = 1,      // 删除
    MCGTrainOperateNoteTapType = 2,     // 笔记点击
    MCGTrainOperateAvatarTapType = 3,   // 头像点击
    MCGTrainOperateUpgradeType = 4,     // 芝士医生去升级级别
    MCGTrainOperateAIAvatarType = 5,    // AI创建头像
    MCGTrainOperateAlbumUploadType = 6, // 相册上传
    MCGTrainBeginOrContinueType = 7,    /**<开始或继续. */
    MCGCheckTrainResultType = 8,        /**<查看问诊结果. */
};

@interface TPEnum : NSObject

// 处理返回多个状态，需要枚举值相加的问题
+ (CourseOrderType)realOrderStatusWith:(NSInteger)status;

+ (FileType)fileTypeWithPath:(NSString *)path;

+ (NSString *)courseWareTextWith:(NSInteger)type;

+ (NSString *)quesTypeStrWithAlias:(QuestionAlias)alias;

+ (QuestionType)quesTypeWithStr:(NSString *)quesTypeStr;

/// 根据课件类型得到对应课件类型图片UIImage
+ (UIImage *)imageFromCoursewareResourceType:(CoursewareResourceType)coursewareResourceType;

@end
